from datetime import datetime

from src.baseapp.model import db, CustomDbModel, BaseOrmoperator


class PlanModel(CustomDbModel):
    """
    测试计划表
    """
    __tablename__ = 'test_plan'

    # 测试计划id
    plan_id = db.Column(db.Integer, primary_key=True, autoincrement=True)

    # 测试计划名称
    plan_name = db.Column(db.String(100), nullable=False)

    # 测试计划描述
    plan_description = db.Column(db.String(255), nullable=True)

    # 测试计划所属项目id
    project_id = db.Column(db.Integer, nullable=False)

    # 测试计划预估开始时间
    plan_pre_start_time = db.Column(db.DateTime, nullable=True)

    # 测试计划预估结束时间
    plan_pre_end_time = db.Column(db.DateTime, nullable=True)

    # 测试计划实际开始时间
    plan_actual_start_time = db.Column(db.DateTime, nullable=True)

    # 测试计划实际结束时间
    plan_actual_end_time = db.Column(db.DateTime, nullable=True)

    # 测试计划状态 0:未开始 1:进行中 2:已完成 3:已暂停 4:已取消
    plan_status = db.Column(db.Integer, nullable=False, default=0)

    # 测试计划创建人id
    create_user_id = db.Column(db.Integer, nullable=False)

